Dynamic driver and vehicle analytics based on vehicle tracking and driving statistics

ABSTRACT

Driver safety, vehicle safety, and environment safety may be scored based on a variety of input data concerning a driver, a vehicle, or an environment in which the vehicle drives. An overall safety score may be generated based on at least some of these three scores. These scores may be compared to thresholds to trigger or initiate actions such as providing notifications to drivers, raising or reducing vehicle insurance rates, providing coupons and promotions to drivers, or limiting vehicle speed in a manner that is personalized to the driver and/or vehicle and/or environment.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims the priority benefit of provisional U.S.patent application Ser. No. 62/813,567 filed Mar. 4, 2019 and titled“Dynamic Driver and Vehicle Analytics Based on Vehicle Tracking andDriving Statistics,” the disclosure of which is incorporated herein byreference.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention generally pertains to tracking the geographiclocation of vehicles in relation to other vehicles. More specifically,the present invention pertains to utilizing location based technologiesto identify driver abnormalities in an ad hoc traffic flow.

Description of the Related Art

A Global Navigation Satellite System (GNSS) is a satellite-basedgeo-spatial positioning system in which a GNSS receiver device receivessignals broadcast by multiple GNSS satellites orbiting the Earth, and,based on the signals from these satellites, is able to determine its ownlocation. Common GNSS systems include the US-based Global PositioningSystem (GPS), the Russia-based Global Navigation Satellite System(GLONASS), the China-based BeiDou Navigation Satellite System (BDS), andthe Europe-based Galileo GNSS.

Some vehicles include navigation devices with integrated GNSS receiversthat may be used together with road maps stored on the navigation deviceto determine a current location of the vehicle within a city's roadinfrastructure and to assist the driver in determining how to arrive ata desired destination from their current location via the city's roadinfrastructure. These navigation devices may be built into the vehicleitself, as in a dashboard computer, or may simply be located within thevehicle, as in a driver's smartphone.

A category of insurance referred to as usage-based insurance (“UBI”) hasrecently been gaining popularity as a way for insurance companies tomore fairly allocate risk among their customers. Under UBI, vehicleusage data is shared, directly or indirectly, with insurance carriers,who then estimate risk based on this vehicle usage data and priceinsurance accordingly. At least in theory, UBI should benefit driverswhose vehicles are not driven as often and are therefore exposed to lessrisk. However, the data upon which UBI relies on is not always reliableand sometimes lacks context, leading to potentially unfair or inaccuratejudgments as to allocation of risk. In particular, UBI is traditionallybased on very simple tracking of distances traveled, as by an odometer.Such simple tracking information generally provides no insight into howsafely the driver drives, in what environmental conditions the vehicleis driven in, or the condition of the vehicle—all of which impact risk.Failure to consider such factors limits UBI's usefulness and accuracy,and essentially treats safe driving identically to unsafe driving.

Additionally, UBI can in some cases present privacy issues in that moredata is collected and shared about drivers and vehicles than everbefore—some of which can be sensitive, such as location data from whichan individual's location could be inferred. As increasingly strictprivacy laws are increasingly put in place around the world, such datais risky to share widely without protection. Finally, UBI does nothingto assist drivers or organizations employing drivers to improve driving.

Traditional vehicle analytics are technically problematic because theyare inaccurate and insufficient to generate accurate analytics forvehicle and driver behavior. There is a need for technologicalimprovements in vehicle operation capture, interpretation, analytics,feedback, and enhancement.

SUMMARY OF THE PRESENTLY CLAIMED INVENTION

Techniques and systems are described for analyzing driver behavior. Inone example, a method may include receiving kinematic data from acomputing device at a vehicle that is operated be a driver. The receivedkinematic data may characterize movement of the vehicle over a firsttime period. The method may also include generating a driver safetyscore for the driver based on the received kinematic data and updatingthe driver safety score based on additional kinematic data received overa second time period. The method may also identify that the driversafety score has reached a first threshold level, and an action may beinitiated based on the driver safety score reaching the first threshold.

In another example, a non-transitory computer-readable storage mediumstores instructions that, when executed by a processor, implement amethod of analyzing driver behavior. The method may include receivingkinematic data from a computing device at a vehicle that is operated bea driver. The received kinematic data may characterize movement of thevehicle over a first time period. The method may include generating adriver safety score for the driver based on the received kinematic dataand updating the driver safety score based on additional kinematic datareceived over a second time period. The method may include identifyingthat the driver safety score has reached a first threshold level and anaction may be initiated based on the driver safety score reaching thefirst threshold.

In another example, an apparatus for analyzing driver behavior includesa memory storing instructions and a processor that executes theinstructions. Execution of the instructions by the processor causes theprocessor to perform system operations, which include generating adriver safety score based on kinematic data received from a computingdevice at a vehicle operated by a driver. The kinematic datacharacterizes movement of the vehicle over a first time periodassociated with the driver operating the vehicle. The system operationsalso include updating the driver safety score based on additionalkinematic data received over a second period of time and identifyingthat the driver safety score has reached a first threshold level afterupdating the driver safety score. The system operations also includeinitiating an action based on the driver safety score reaching the firstthreshold level.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system for retrieval of information from and aboutvehicles, infrastructure, environments, and drivers.

FIG. 2 illustrates input data concerning a driver, a vehicle, and anenvironment, as well as output analysis results based on the input data.

FIG. 3A is an equation for calculating an overall score based on adriver score, a vehicle score, and an environment score.

FIG. 3B is an equation for calculating a driver safety score based onsafety of individual elements of information about a driver.

FIG. 4 is a graph illustrating a driver score over time, where differentevents are triggered as a result of the driver score crossing differentthreshold driver scores.

FIG. 5 illustrates alerts sent to a recipient device in response tovehicle behavior or to a driver score reaching a particular threshold.

FIG. 6 illustrates interfaces for viewing different trips, maps,rewards, penalties, and scores.

FIG. 7 is a table illustrating collection of vehicle data that includesVIN number, odometer readings, dates, times, annual distances traveled,radii of operation, and photos.

FIG. 8 illustrates a vehicle electronic control system.

FIG. 9 illustrates application of driver, vehicle, and environmentalsafety/risk assessments on drive enhancement systems such as vehiclespeed limiting systems.

FIG. 10 is a first block diagram of an exemplary computing device thatmay be used to implement some aspects of the subject technology.

DETAILED DESCRIPTION

Driver safety, vehicle safety, and environment safety may be scoredbased on a variety of input data concerning a driver, a vehicle, and anenvironment in which the vehicle drives. An overall safety score may begenerated based on at least some of these three scores. These scores maybe compared to thresholds to trigger performance of actions such asproviding notifications to drivers, raising or reducing insurance rates,providing coupons and promotions, or limiting vehicle speed.

FIG. 1 illustrates a system for retrieval of information from and aboutvehicles, infrastructure, environments, and drivers.

The system 100 of FIG. 1 includes a vehicle 110, a positioning device115 with a GNSS receiver, a mobile device 120, vehicle sensors 105, GNSSpositioning satellites 125 and 130, a communications tower 135, apositioning server 140, a network 145, a network server 150, anapplication server 155, secure databases 190, recipient devices 195,environment data sources 170, and road-based data sources 180. Theapplication server 155 executes an application 160, which is describedin greater detail below. The various environmental data sources 175A,175B, 175C, 175D, 175E, and 175F included in FIG. 1 may be computersconnected to the Internet or other communication network that providedata to user devices. For example, a data source may be a serveroperated by an information source network such as Google® orAccuWeather®, may be a computer operated by highway patrol, may be adevice that collects data along a roadway, or some combination thereof.

Though vehicle 110 is illustrated in FIG. 1 as an automobile, it may beany type of vehicle 110 that travels on or through any type ofthroughway. Vehicle 110 may travel via roads, waterways, airways, orother throughways. The terms “road” or “street” as used herein mayinclude public roads, private roads, toll roads, highways, freeways,residential streets, driveways, bridges, off-road trails, bike lanes,pathways, other thoroughfares allowing for travel via a land-basedvehicle, or combinations thereof. A land-based vehicle may be anautomobile, a semi-truck, a shipping truck, a motorcycle, a bicycle, atricycle, a scooter, a sidecar, a pedicab, a Segway®, or combinationsthereof.

The vehicle 110 may include a positioning device 115 that may includeone or more GNSS receivers that receive from communication satellites125 and 130 of one or more GNSS types. The positioning device 115 mayfurther communicate with a wireless, data, or cellular communicationsystem by way of the likes of communications tower 135, either via themobile device 120 or on its own. Positioning device 115 may receivesignals from one or more positioning satellites 125 and 130 anddetermine its geographic location based on the received signals, forexample identifying latitude and longitude coordinates, comparing themto map data that is stored at the positioning device 115 and/or receivedfrom one or more map servers or positioning servers 140. The positioningdevice 115 may thereby identify its own position not only using latitudeand longitude coordinates, but along particular roads, waterways,airways, or other throughways. The positioning device 115 may be coupledto, secured within, or otherwise disposed within vehicle 110, and maythereby determine the position of the vehicle 110 by determining theposition of the positioning device 115. The positioning satellites 125and 130 may be part of the US-based Global Positioning System (GPS), theRussia-based Global Navigation Satellite System (GLONASS), theChina-based BeiDou Navigation Satellite System (BDS), the Europe-basedGalileo GNSS, another GNSS system, or combinations thereof. Ideally, atleast three satellites would be used to make triangulation possible,though an imprecise location estimate may sometimes be determined fromone or two.

While FIG. 1 illustrates GNSS satellites 125 and 130, it should beunderstood that the positioning device 115 need not include a GNSSreceiver, but may instead identify its position based on receipt of oneor more signals from land-based signals whose sources have knownlocations, such as signals from one or more cellular or radiocommunication towers 135. Ideally, at least three land-based signalsources would be used to make triangulation possible, though a lessprecise location estimate may be determined from one or two signalsources.

Positioning device 115 may communicate the positioning data either onits own or through mobile device 120 via a cellular communicationnetwork by use of communications tower 135, which receives and conveyscellular communications onward throughout a cellular network. Thepositioning data may be conveyed using a format associated with aparticular GNSS, using one or more latitude/longitude coordinates, usingone or more street names, using one or more street addresses, orcombinations thereof. Positioning device 115 may alternately oradditionally communicate the positioning data either on its own orthrough mobile device 120 via radio frequency signals, wireless localarea network (WLAN), 802.11 Wi-Fi, microwave frequency signals, orcombinations thereof.

Positioning device 115 may be attached to and/or secured within thevehicle 110, as in a dashboard navigation computer. Positioning device115 may be included within a mobile device 120 disposed within thevehicle, such as a GNSS receiver and/or positioning chipset within asmartphone or tablet device. The positioning device 115 may beassociated with the vehicle 110, an owner of the vehicle, the driver ofthe vehicle, an employer of the driver of the vehicle, a passengerwithin the vehicle, an employer of the passenger of the vehicle, orcombinations thereof. Likewise, the mobile device 120 may be associatedwith the vehicle 110, an owner of the vehicle, the driver of thevehicle, an employer of the driver of the vehicle, a passenger withinthe vehicle, an employer of the passenger of the vehicle, orcombinations thereof.

Communications tower 135 may communicate the location informationreceived for vehicle 110 to positioning server 140 and/or network server150 and/or application server 155. The positioning server 140 of FIG. 1may be a server associated with a particular GNSS, may be amap/navigation server that provides map data, or a combination thereof.Though cellular networks and communication systems are discussed herein,other communication networks may be used to communicate the GPS andidentity data to an application, such as but not limited to satellitecommunication technology.

Network server 150 may communicate with positioning server 140 ordirectly with the communication tower 135 through a communicationnetwork 145, such as a local area network (LAN) or the Internet.Application server 155 may communicate with network server 150 and/orpositioning server 140 and/or the communication tower 135 through a LANor the Internet. Network server 150 may be implemented as one or moreservers implementing a network service. The network server may receivepositioning data, perform preliminary processing on the data, andprovide the positioning data to application server 155. Positioningserver 140, network server 150, and application server 155 may beimplemented using one or more computing devices as discussed below withrespect to FIG. 10.

Network 145 may facilitate communication of data between differentservers, devices and machines, such as positioning server 140, networkserver 150, and application server 155. The network may be implemented,for example, as a private network, public network, intranet, theInternet, a wide area network (WAN), a local area network (LAN), awireless local area network (WLAN), or combinations thereof.

Application server 155 may be implemented as one or more servercomputing devices, and includes computer program instructionscorresponding to an application 160, which may be executed by one ormore processors of the application server 155 to cause the applicationserver 155 to perform application operations associated with theapplication 160. Application 160 may receive positioning data associatedwith positioning device 115 and/or mobile device 120. Application 160may then, through application server 155, process the positioning dataalong with other geo-data, and identify vehicle and/or driver behavior.

Vehicle and/or driver behavior may be stored in a secure database 190 orother data structure, which may be stored on any kind of memory 1020,mass storage 130, or portable storage 1040, or another non-transitorycomputer-readable storage medium by the application server 155 as partof the application operations of the application 160. The applicationoperations may then include various analyses of the stored vehiclestatus and/or driver behavior and/or environment status as discussedfurther with respect to FIG. 2, and it may then send this analysis toone or more recipient devices 195. The one or more recipient devices 195may include one or more intermediate recipient devices 195 that thenoptionally process the received analysis and send data further to otherrecipient devices 195. In some cases, the recipient devices 195 mayinclude the mobile device 120 associated with the vehicle 110, which maybe a mobile device 120 a driver of the vehicle 110. The recipientdevices 195 may also include devices associated with a driver's employeror contractee, a driver's auto insurance carrier, a driver's healthinsurance carrier, and employer or contractee's insurance carrier, avehicle manufacturer, a vehicle distributor, a vehicle fleet manager oradministrator, or combinations thereof.

The vehicle 110 may include, or have coupled thereto, one or morevehicle sensors 105 and/or interfaces, which may include diagnosticsensors and corresponding interfaces such as on-board diagnostics (OBD)implementations. OBD implementations included in or accessible by thevehicle sensors 105 may include, for example, Assembly Line DiagnosticLink (ALDL), OBD-I, OBD-1.5, OBD-II, Multiplex OBD (M-OBD), European OBD(E-OBD), Japan OBD (J-OBD), Australian Design Rule 79/01 (ADR 79/01),ADR 79/02, variants thereof, or combinations thereof. The one or morevehicle sensors 105 may retrieve data about vehicle maintenance, oillevel, headlight functionality status, brake pad functionality status,brake light functionality status, battery level, tire pressure,estimated/actual tire wearing status, time since last tire replacement,time since last oil change, time since last brake pad replacement, timesince last tire rotation, odometer mileage, seatbelt functionalitystatus, airbag functionality status, number of major collisions detectedby accelerometers, number of minor collisions detected byaccelerometers, time since last maintenance, number of major repairs,number of minor repairs, steering column integrity, chassis integrity,vehicle temperature, engine status, vehicle top speed reached, intakeair temperature, fan functionality status, air conditioningfunctionality status, heating functionality status, engine coolanttemperature, freeze detection status, overheating detection status,oxygen sensor status, warm-ups since codes cleared, distance traveledsince codes cleared, warm-ups overall, distance traveled overall, fueltank level, absolute barometric pressure, catalyst temperature, ambientair temperature, throttle position, fuel-air ration, time since troublecodes cleared, fuel type, ethanol fuel percentage, vapor pressure, fuelpressure, fuel injection timing, engine fuel rate, driver's demandpressure, engine torque, engine coolant temperature, intake airtemperature, fuel pressure, inlet pressure, rotations per minute (RPM)history, wastegate control, filter functionality status, engine runtimehistory, engine friction, boost pressure, turbocharger pressure, NOxpressure, estimated/actual fuel efficiency, and similar measurements.Data from the vehicle sensors 105 may be read by the mobile device 120and sent through to communication tower 135 and network 145 toapplication server 155, which may use data from the vehicle sensors 105as part of its analysis of driver behavior and vehicle status, throughwhich it generates, for example, the driver safety score 235 and vehiclesafety score 240 of FIG. 2. The vehicle sensors 105 may include, forexample, one or more of any of the following: accelerometers,gyroscopes, gryometers, barometers, magnetometers, compasses, inertialnavigation systems (INSs), inertial measurement units (IMUs), inertialreference systems (IRSs), inertial reference units (IRUs), GNSS sensors,brake wear indicators, brake sensors, still image cameras, videocameras, microphones, horn honk usage/pressure sensors, night visioncameras/sensors, rear vision cameras, blind spot detectioncameras/sensors, collision sensors, side curtain sensors, steering anglesensors, airbag sensors, wheel speed sensors, cross traffic alertsensors, automatic brake actuator sensors, laser rangefinders, RADARsensors, LIDAR sensors, active park assist sensors, tire pressuresensors, infrared pedestrian detection/warning sensors, automatic speedcontrol device (ASCD) sensors, lane departure detection sensors,adaptive cruise control sensors, mass air flow (MAF) sensors, enginespeed sensors, oxygen sensors, manifold absolute pressure (MAP) sensors,spark knock sensors, fuel temperature sensors, thermometers,thermistors, photoresistors, phototransistors, voltage sensors,voltmeters, ammeters, multimeters, accelerator pedal sensors, brakefluid pressure sensors, barometric pressure sensors, air bag impactsensors, air charge temperature sensors, air cleaner temperaturesensors, camshaft position sensors, coolant temperature sensors,crankshaft position sensors, exhaust gas recirculation (EGR) positionsensors, EGR valve pressure sensors, engine crankcase pressure sensors,engine rotations per minute (RPM) sensors, engine variable sensors,exhaust temperature sensors, fuel injection pressure sensors, fuelinjection timing sensors, heater core temperature sensors, hybrid phasecurrent sensors, ignition misfire sensors, ignition passlock sensors,knock (detonation) sensors, power door resistance sensors, fueltemperature sensors, turbo boost sensors, tail light outage sensors,tachometer sensors, suspension yaw sensors, suspension position sensors,throttle position sensors, top dead center (TDC) sensors, tire pressuremonitoring sensors, vacuum sensors, vehicle transmission speed sensors,backup sensors, or combinations thereof.

The environmental data sources 170 also supply data to the applicationservers 155 through network 145, and may also optionally provide data tothe mobile device 120 and/or recipient device 195. The environmentaldata sources 170 may include one or more map data sources 175A providingmaps of roads and other thoroughfare, one or more traffic data sources175B providing data about traffic and speed limits and directionalrestrictions on roads or thoroughfares, one or more weather data sources175C providing data about weather conditions in the sky and on roads,one or more terrain data sources 175D providing data about terrain andelevation and road types (e.g., paved, unpaved, asphalt, cobblestone,dirt, rocky, off-road), one or more event data sources 175E providingdata about accidents and construction zones and street festivals andother events that might disrupt or slow driving, one or more landmarkdata sources 175F providing data about buildings and gas stations andhazardous areas, or combinations thereof. Data from the environmentaldata sources 170 may be sent through network 145 to application server155, which may use data from the environmental data sources 170 as partof its analysis of environmental status, through which it generates, forexample, the environment safety score 245 of FIG. 2.

The road-based data sources 180 may include vehicle-to-vehicle (V2V)data sources 185A, referring to data received by the vehicle 110 (or bythe mobile device 120) from other vehicles (or corresponding mobiledevices). The road-based data sources 180 may includeinfrastructure-to-vehicle (I2V) data sources 185B, referring to datareceived by the vehicle 110 (or by the mobile device 120) from roadsideinfrastructure, such as sensors mounted on traffic lights or speedcameras or street signs. The road-based data sources 180 may includeinfrastructure-to-vehicle (I2V) data sources 185B, referring to datareceived by infrastructure from the vehicle 110 (or mobile device 120)or from other vehicles (or corresponding mobile devices), which theinfrastructure can then communicate to the vehicle 110 (or mobile device120) through V2I. Examples of V2V data, I2V data, and V2I data mayinclude cameras, positioning devices, proximity sensors, vehiclesensors, environment sensors, and the like. In fact, any of the datatypes or sensor types discussed with respect to the vehicles sensors 105and/or environmental data sources 170 may be conveyed by the road-baseddata sources 180. While the road-based data sources 180 are illustratedcommunicating to the mobile device 120, it should be understood thatthey may communicate more directly to the application servers 155through networks 145.

All of the devices illustrated in FIG. 1—including the vehicle 110,positioning device 115, mobile device 120, vehicle sensors 105, GNSSpositioning satellites 125 and 130, communications towers 135,positioning servers 140, a network 145, network servers 150, applicationservers 155, secure databases 190, recipient devices 195, environmentdata sources 170, and road-based data sources 180—may be or may includeone or more computing devices 1000 of FIG. 10, and/or may include one ormore of the components and/or elements illustrated in and/or discussedwith respect to FIG. 10. Furthermore, the one or more secure databases190 may store data from any combination of these devices: vehicle 110,positioning device 115, mobile device 120, vehicle sensors 105, GNSSpositioning satellites 125 and 130, communications towers 135,positioning servers 140, a network 145, network servers 150, applicationservers 155, secure databases 190, recipient devices 195, environmentdata sources 170, and road-based data sources 180.

FIG. 2 illustrates input data concerning a driver, a vehicle, and anenvironment, as well as output analysis results based on the input data.

In particular, FIG. 2 illustrates input data 210 from various sourcesbeing input into the application server(s) 155 of FIG. 1 to be processedby the application 160 of FIG. 1, which generates, outputs, and sendsanalysis results 230 to one or more recipient devices 195 of FIG. 1. Theinput data 210 may include any of the types of input data illustrated inor discussed with respect to FIG. 1 and may be from any of the datasources (or types of data sources) illustrated in or discussed withrespect to FIG. 1. In particular, the input data 210 of FIG. 2 includesdriver data 215, vehicle data 220, and environment data 225. The driverdata 215 of FIG. 2 may be referred to as kinematic data, as this datarelates to the movement of one or more vehicles over time, and thiskinematic data may be used to calculate driver safety scores 235 and/orvehicle safety scores 240 consistent with the present disclosure.

The particular driver data 215 used for the analysis illustrated in FIG.2 identifies that the driver drives two vehicles, that the driver drivesalong city streets 60% of the time and along highways 40% of the time,that the driver drives during the daytime 90% of the time and during thenighttime 10% of the time, that the driver speeds 8% of the time whiledriving on city roads, that the driver speeds 16% of the time whiledriving on highway roads, that the driver was involved in one accidentin which he/she was judged to be at fault, that the driver was involvedin two accidents in which he/she was judged to be not at fault, that thedriver has not been charged with driving under the influence (DUI) ordriving while intoxicated (DWI), that the driver wears his/her seatbelt97% of the time while driving, that the driver does not wear his/herseatbelt 3% of the time while driving, that the driver is registered for“gold tier” auto insurance, that the driver texts while driving on 4% ofdrives, that the driver performs hard brakes on 6% of drives, that thedriver performs hard accelerations on 4% of drives, that the drivercarpools 70% of the time. Other possible types of driver data 215 areidentified with respect to FIG. 1.

The application 160 running on the application server(s) 155 producesthe driver safety score 235 based on at least a subset of the driverdata 215 (and optionally based on at least a subset of the vehicle data220 and/or the environment data 225 where applicable to how safe thedriver is). In FIG. 2, a scale from 1 to 5 is used, with 1 being veryrisky, 2 being fairly risky, 3 being neutral, 4 being fairly safe, and 5being very safe. The driver safety score 235 of FIG. 2 is 4 out of 5,indicating that the driver is fairly safe. This may be calculated usingan average, optionally a weighted average, of the different elementslisted in the input data 210 that are used to calculate the driversafety score 235, as in the driver score equation 350 of FIG. 3B.

The particular vehicle data 220 used for the analysis illustrated inFIG. 2 identifies that the vehicle has 3 drivers, that the vehicle isused to drive on city roads 55% of the time and on highway roads 45% ofthe time, that the brakes have 65% estimated or actual remaininglifespan, that the oil has 21% estimated or actual remaining lifespan,that the battery has 68% estimated or actual remaining charge, that theaverage tire pressure of the four tires is 67%, that the wiper fluid isestimated to be or is actually 37% full, that the fuel tank is estimatedto be or is actually 60% full, that the coolant is estimated to be or isactually 70% full, that the seatbelts are all functional, that theairbags are all functional, that the left and right headlights are bothfunctional, that the left brake light is out but the right brake lightis functional, that the vehicle has been involved in one major accidentand one minor accident, that the has been involved in two major repairsand one minor repair, that the odometer reads 20,203 miles, and that themaintenance record is good, and that the vehicle's internal temperatureis 12 degrees Celsius (53.6 degrees Fahrenheit). Other possible types ofvehicle data 220 are identified with respect to FIG. 1.

The application 160 running on the application server(s) 155 of FIG. 1produces the vehicle safety score 240 based on at least a subset of thevehicle data 220 (and optionally based on at least a subset of thedriver data 215 and/or the environment data 225 where applicable to howsafe the vehicle is). The vehicle safety score 240 of FIG. 2 is 3 out of5, indicating that the vehicle is neutral in terms of safety. This maybe calculated using an average, optionally a weighted average, of thedifferent elements listed in the input data 210 that are used tocalculate the vehicle safety score 235, similarly to how the driverscore 235 is calculated using the driver score equation 350 of FIG. 3B.

The particular environment data 225 used for the analysis illustrated inFIG. 2 identifies that the ambient temperature outside the vehicle is 6degrees Celsius (42.8 degrees Fahrenheit), that the roads along whichthe vehicle 110 is traveling or is scheduled to travel or are nearby arelightly icy, that the roads along which the vehicle 110 is traveling oris scheduled to travel or are nearby are mainly paved and mountainoushighway roads, that light rain and snow is occurring or is expected tooccur along the roads along which the vehicle 110 is traveling or isscheduled to travel or are nearby, that the current time is 11:23 PM,that the sky is currently dark or will be dark when the vehicle 110 isscheduled to drive, that the moon is a new moon (indicating littlemoonlight while a full moon indicates more moonlight), that the streetlighting is sparse for the roads along which the vehicle 110 istraveling or is scheduled to travel or are nearby due to theseroads/regions being mainly rural, that the visibility is currently or isexpected to be low due to cloudy skies, that traffic is currently or isexpected to be medium, and that hazards on the roads along which thevehicle 110 is traveling or is scheduled to travel or are nearby includeone or more school zones and construction zones and one or moreaccidents/collisions. Other possible types of environment data 225 areidentified with respect to FIG. 1.

The application 160 running on the application server(s) 155 of FIG. 1produces the environment safety score 245 based on at least a subset ofthe environment data 225 (and optionally based on at least a subset ofthe driver data 215 and/or the vehicle data 220 where applicable to howsafe the environment is). The environment safety score 245 of FIG. 2 is2 out of 5, indicating that the environment is fairly risky. This may becalculated using an average, optionally a weighted average, of thedifferent elements listed in the input data 210 that are used tocalculate the environment safety score 245, similarly to how the driverscore 235 is calculated using the driver score equation 350 of FIG. 3B.

It should be understood that the environment data 225, and the resultingenvironment safety score 245, can represent a number of differentscopes. That is, the environment data 225 and resulting environmentsafety score 245 can be narrowly focused on the environment in theimmediate vicinity of the vehicle 110 at any given point. Alternately,the environment data 225 and resulting environment safety score 245 canbe focused on the environment along a particular road or route (thatincludes one or more roads) along which of the vehicle 110 is traveling,has just traveled, or is scheduled to travel. Alternately, theenvironment data 225 and resulting environment safety score 245 can befocused on the environment within a larger region in which the vehicle110 is located and/or in which a particular road or route (that includesone or more roads) is located, such as a block, a neighborhood, a citydistrict/borough/suburb, a city, a metropolitan area, a county, a state,a province, a division, a subdivision, a jurisdiction, a country ornation, a multinational area, a continent, a multicontinental area, orworldwide.

The output 230 of FIG. 2 also includes an overall score 250, calculatedusing a weighted average of the driver score 235, the vehicle score 240,and the environment score 245 as discussed further in FIG. 3A.

FIG. 3A is an equation for calculating an overall score based on adriver score, a vehicle score, and an environment score. The equation300 of FIG. 3A is a mean calculation that introduces multipliers intoboth the numerator and denominator. In the numerator, the driver safetyscore 235 multiplied by a first multiplier value M₁ 310, the vehiclesafety score 240 is multiplied by a multiplier value M₂ 320, and theenvironment safety score 245 is multiplied by a multiplier value M₃ 330.The denominator is the sum of the three multipliers (multiplier M₁ 310,multiplier M₂ 320, and multiplier M₃ 330).

A higher multiplier value indicates that the corresponding index thatthe multiplier multiplies will be weighted more heavily. For example,the driver safety score 235 can be ranked as most important andtherefore can be weighted to have more influence on the overall safetyscore 250 when the multiplier M₁ 310 is a higher value than multipliersM₂ 320 and M₃ 330. The vehicle safety score 240 can be ranked as mostimportant and therefore can be weighted to have more influence on theoverall safety score 250 when the multiplier M₂ 320 is a higher valuethan multipliers M₁ 310 and M₃ 330. The environment safety score 245 canbe ranked as most important and therefore can be weighted to have moreinfluence on the overall safety score 250 when the multiplier M₃ 330 isa higher value than multipliers M₁ 310 and M₂ 320.

An additional safety score not shown in FIG. 2 or FIG. 3A, multiplied bya corresponding multiplier not shown in FIG. 2 or FIG. 3A, can also beadded to the numerator of the equation 300, with the correspondingmultiplier also being added to the denominator of the equation 300.Similarly, in some cases, the overall safety score 250 can be calculatedwithout factoring in certain scores at all, essentially by setting theircorresponding multipliers to a value of zero, removing the correspondingscore(s) from having any impact on the calculation 300 of the overallsafety score 250.

The multipliers may have different values depending on how importantcertain factors are in determining overall safety, and how fair it is toconsider the impact of certain factors in deciding punishments andrewards such as increases or decreases to insurance premiums. Forexample, as any vehicle drives, the environment score 245 may sometimeschange rapidly as time passes, as driving at night presents hazards notpresent during the daytime, and may also change as the vehicle drivesthrough different areas with distinct climates, road conditions, trafficconditions, and the like. In some cases, the environment score 245 maybe removed from consideration, or may be weighted as less important thanthe driver score 235 and vehicle score 240, for example using a lowermultiplier M₃ 330. In areas where large environmental shifts greatlyimpact safety, however, a higher multiplier M₃ 330 may be valuable.

FIG. 3B is an equation for calculating a driver safety score based onsafety of individual elements of information about a driver. Individualelements of information about a driver may each be scored based onrecorded sensor measurements and/or historical data, which may be thencompared to thresholds to determine how safe each individual element ofinformation is. Using the seatbelt wearing element in the driver data215 of FIG. 2 as an example of an element of information about thedriver, the driver wearing his/her seatbelt between 95% to 100% of thetime could correspond to a safety rating for the element of 5 (verysafe), the driver wearing his/her seatbelt between 90% to 94.9% of thetime could correspond to a safety rating for the element of 4 (fairlysafe), the driver wearing his/her seatbelt between 85% to 89.9% of thetime could correspond to a safety rating for the element of 3 (neutral),the driver wearing his/her seatbelt between 80% to 84.9% of the timecould correspond to a safety rating for the element of 2 (fairlyunsafe), and the driver wearing his/her seatbelt less than 80% of thetime could correspond to a safety rating for the element of 1 (veryunsafe). Because seatbelt wearing element in the driver data 215 of FIG.2 indicates that the driver analyzed in FIG. 2 wears his/her seatbelt97% of the time, this particular seatbelt wearing element in the driverdata 215 of FIG. 2 would have a score of 5 (very safe) based on therubric above. These thresholds may be predetermined based on safetystandards, or may be based on average driving behaviors. For example,the thresholds for the neutral score (3) could be based on a mean, thethresholds for the fairly safe score (4) and fairly risky score (2)could be based on one or more standard deviations away from the mean,and the thresholds for the very safe score (5) and very risky score (1)could be based on anything higher or lower than the other thresholds,respectively. In scales with more than 5 numbers, more intermediatethresholds could be set, for example one based on a single standarddeviation from the mean, the next based on two standard deviations fromthe mean, the next based on three, and so on.

The equation 350 of FIG. 3B for the weighted average is very similar tothe one above for the overall score. This time, the scores generated asdescribed above for the individual elements in the driver data 215 ofFIG. 2 are each multiplied by multipliers N and then summed together inthe numerator, with the denominator including a sum of all of themultipliers N.

The particular equation 350 of FIG. 3B includes two individual elementsin the driver data 215. Thus, the numerator includes a first driverelement score 360 multiplied by a first multiplier N₁ 365 added to asecond driver element score 370) multiplied by a second multiplier N₂375. The denominator includes the sum of the first multiplier N₁ 365 andthe second multiplier N₂ 375.

Similar equations to the equation 350 may be used to calculate thevehicle score 240 of FIG. 2 (based on safety of individual elements ofinformation about the vehicle) and the environment score 245 of FIG. 2(safety of individual elements of information about an environment),though those are not illustrated here. As discussed above with respectto FIG. 2, the calculation of the driver score 235 may factor inindividual elements of vehicle data 220 and/or environment data 225where applicable to how safe the driver is. Likewise, the calculation ofthe vehicle score 240 may factor in individual elements of driver data215 and/or environment data 225 where applicable to how safe the vehicleis. Likewise, the calculation of the environment score 245 may factor inindividual elements of driver data 215 and/or vehicle data 220 whereapplicable to how safe the environment is.

FIG. 4 is a graph illustrating a driver score over time, where differentevents are triggered as a result of the driver score crossing differentthreshold driver scores. The graph 400 of FIG. 4 is a graph with a line460 representing the driver safety score 235 of a particular driver overa period of time. The horizontal X axis 410 represents time, while thevertical Y axis 420 represents driver safety scores 235. Following theline 460 allows one to read this particular driver's driver safety score235 at any given time, calculated as described with respect to FIG. 2and FIG. 3B.

The graph 400 of FIG. 4 includes three threshold driver safety scorevalues—a first low threshold driver safety score value 430A (for exampleset to 2), a second higher threshold driver safety score value 430B (forexample set to 4), and a third highest threshold driver safety scorevalue 430C (for example set to 5). At a first point 435A, the line 460falls below the first threshold 430A, indicating that the driver'sdriver safety score 235 has fallen into risky driving territory, whichmay trigger the driver being issued a punishment, such as a monetary feeor fine 440, or a rise in auto insurance premium. At a second point435B, the line 460 rises back above the first threshold 430A, indicatingthat the driver's driver safety score 235 is no longer in risky drivingterritory, which may trigger the driver being issued a reward, such as adiscount coupon 630 of FIG. 6. At a third point 435C, the line 460 risesabove the second threshold 430B, indicating that the driver's driversafety score 235 of FIG. 2 has reached safe driving territory, which maytrigger the driver being issued another reward, such as a discountcoupon 630 of FIG. 6. The line 460 approaches but never quite risesabove the third threshold 430C, but if it did, this might also triggerthe driver being issued another reward, such as a discount coupon 630 ofFIG. 6. These punishments and rewards incentivize better drivingbehavior by the driver. In cases where the rewards or punishments aretied to dynamic increases or decreases in auto or health insurance ratesor premiums, this may allow safer drivers to pay less than riskierdrivers due to generally lower risk of being involved in an automobileaccident.

Similar graphs can also be generated graphing the various safety scoresof FIG. 2 as they change overtime. As such the vehicle safety score 240,environment safety score 245, overall score 250, or combinations thereofmay be displayed graphically and these graphs may identify rewards forrising to particular (higher/safer) thresholds and/or punishments forfalling to other (lower/riskier) thresholds. Rather than incentivizebetter driver behavior, this may incentivize good upkeep and maintenanceof a vehicle, choosing to drive in safer environments (safer areas atsafer times of day and so forth).

In some cases, one or more of the threshold driver scores 430A/B/C ofFIG. 4 may be based on data received regarding other drivers and/orvehicles than the driver and/or vehicle being scored. These otherdrivers and/or vehicles may be similar to the driver and/or vehiclebeing scored in that they are on the same roadway, in the same area,share similar driver demographics, drive similar vehicle types, or somecombination thereof. Area, in this case, may be defined as a regionwithin a predetermined radius around a driver and/or vehicle, one ormore portions of one or more roads, one or more entire roads, one ormore districts of one or more towns or cities, one or more entire townsor cities, one or more counties, one or more districts of one or morestates, one or more states, one or more countries, one or morecontinents, or some combination thereof. Driver demographics may bebased on sex, gender, age or age group, ethnicity, disability status, orsome combination thereof. Vehicle types may be based on whether thevehicle is a boat, train, airplane, helicopter, sedan automobile, coupeautomobile, sports utility vehicle automobile, truck automobile,semi-truck automobile, motorcycle, or another type of vehicle. Vehicletypes may be based on number of axles, number of wheels, weight orweight class, or whether the vehicle has a certain component orcapability, such as any component or capability discussed herein withrespect to determining a vehicle score 240.

For instance, a threshold driver score may be based on an average driverscore of the other drivers. In some cases, a threshold driver score maybe based on such an average driver score plus or minus a multipliermultiplied by a standard deviation of the driver scores of the otherdrivers. The multiplier may be any number, such as 0, 0.5, 1, 1.5, 2,2.5, 3, 3.5, 4, 4.5, 5, 5.5, 6, a number higher than 6, or any number inbetween any two of the listed numbers. Thus, for example, the first lowthreshold driver score value 430A of FIG. 4 may be generated to be twostandard deviations below the average driver score of other drivers onthe same roadway, in the same area, with similar demographics, and/ordriving similar vehicles as the driver being scored. Similarly, thesecond higher threshold driver safety score value 430B may be onestandard deviation above the average driver score of the other drivers,and the third highest threshold driver safety score value 430C may betwo standard deviations above the average driver score of the otherdrivers. Threshold driver scores may also be based on minimum or maximumdriver scores of other drivers on the same roadway, in the same area,with similar demographics, and/or driving similar vehicles as the driverbeing scored. The minimum or maximum driver scores of the other driversmay likewise be modified by adding or subtracting the multipliermultiplied by a standard deviation of the driver scores of the otherdrivers.

In certain instances, the scoring of a driver may be relative to datareceived regarding other drivers. For example, in snowy conditionsreceived data may indicate that a driver of a first vehicle is drivingfaster that one or perhaps several other drivers that are driving othervehicles along the same roadway. The driver of the first vehicle may beassigned a lower driver safety score because he is driving faster thananother driver or driver's driving along the same roadway. In such aninstance, the driver of the first vehicle may be sent a messagerecommending that they drive slower because of the snowy conditions.

In certain instances, safety scores may be calculated based on relativespeeds, relative following distances, or number of lane changes per unittime. Furthermore, these safety scores may be calculated based on datareceived from different classes of vehicles in a particular location.For example, the driver of a heavy truck may be assigned a lower scorebased on following distance behind a type of vehicle that has a shorterstopping distance than the heavy truck. In such instances messages maybe sent to a computer at the heavy truck such that the driver of thattruck may be advised to slow down or to increase a following distance.

FIG. 5 illustrates alerts sent to a recipient device in response tovehicle behavior or to a driver score reaching a particular threshold.FIG. 5 illustrates three different alert messages 510, 520, & 530 thatmay have been received by recipient device 550 of FIG. 5 over time. Afirst alert 510 of FIG. 5 indicates that an instance of hard braking hasbeen detected, for example by accelerometers in the vehicle sensors 105.First alert 510 suggests that the driver avoid this unsafe behavior whenpossible to avoid risk of being rear ended in an accident. This firstalert 510 may be directly tied to vehicle data 220 and/or driver data215 of FIG. 2. It should be understood that similar alerts may be tiedto driver data 215 of FIG. 2, for example an alert could advise that thedriver and/or passengers in the vehicle should put on seatbelts. Incertain instances, alerts may be generated based on environment data 225of FIG. 2, for example alerting the driver to icy roads or suggestingthat the driver avoid driving at night when possible because of severeweather or other conditions (e.g. fog, ice, snow, or rain).

A second alert 520 and third alert 530 of FIG. 5 are both based on thedriver score 235 of FIG. 2 reaching particular thresholds, such asthresholds 430A-C of FIG. 4. The second alert 520 indicates that thedriver score has decreased to 2, corresponding to the point 435A of FIG.4, and indicates that as punishment, the driver's health and/or autoinsurance premium will increase by $5 per month. The third alert 530indicates that the driver score has increased to 4, corresponding to thepoint 435C of FIG. 4. Alert 530 indicates that as reward, the driver'shealth and/or auto insurance premium will decrease by $5 per month andthat the driver will be given a coupon 630 for 50% off a coffee at CaféX.

While the second alert 520 and third alert 530 of FIG. 5 are based onthe driver score 235 rising or falling to particular threshold values,similar alerts may be output when the vehicle score 240 rises or fallsto a particular value, when the environment score 245 rises or falls toa particular value, or when the overall score 250 rises or falls to aparticular value. In certain instances, rewards provided to a particulardriver may increase as a score for that particular driver crosses aparticular threshold of a set of different thresholds. For example, ascore reaching a first threshold level may result in a coupon for coffeeand the score reaching a second threshold level may result in discountedinsurance premium costs. In other instances, warnings or punishmentsprovided to a driver may increase in severity as the driver's scorereduces to a first threshold level and then to a second threshold level.For example, when the driver's score reduces to the first thresholdlevel, the driver may be sent a message that warns the driver that he orshe is driving unsafely and that unless the driver begins to drive moresafely that their insurance premium will be increased. When the driver'sscore reduces to the second threshold level, the driver may be sent amessage indicating that their insurance premium rate has been increasedbecause of their continued unsafe driving.

While the alerts of FIG. 5 are illustrated as visual alert notificationmessage boxes, it should be understood that these may alternately oradditionally be output as audible speech messages (e.g., reading thesame or similar text as shown in FIG. 5) or even particular soundeffects such as beeps of different tones. Shifting to audio helps toavoid distracting the driver's visual focus.

FIG. 6 illustrates interfaces for viewing different trips, maps,rewards, penalties, and scores. The first interface 650 of FIG. 6 liststhree trips: a first trip 605, a second trip 610, and a third trip 615.The first trip 605 was on Dec. 2, 2018, lasted 23 minutes and 42seconds, and included one instance of hard braking and two instances ofhard acceleration. The second trip 610 was on Nov. 15, 2018, lasted 54minutes and 26 seconds, and included five instances of hard braking, andincludes speeding for 26% of the route. The third trip 615 was on Nov.7, 2018, lasted one hour and 32 minutes and 17 seconds, and the driverscore rose to 4 on this trip. The interface 650 may include any othertype of data discussed with respect to FIG. 1 or FIG. 2.

The second interface 655 of FIG. 6 includes the same information aboutthe first trip 605 as in the first interface 650 of FIG. 6, and alsoincludes a map 620 of the route taken during the first trip 605. Thisincludes a start point and an endpoint, and includes a marked area ofthe map 625 where the road was icy.

The third interface 660 of FIG. 6 includes the same information aboutthe third trip 615 as in the first interface 650 of FIG. 6, and alsoincludes a coupon 630 for 50% off a coffee at Café X as a reward for thedriver increasing his/her driver score 235 of FIGS. 2 to 4, whichhappened on the third trip 615.

The fourth interface 655 of FIG. 6 includes the same information aboutthe first trip 605 as in the first interface 650 of FIG. 6, and alsoincludes the graph 400 of FIG. 4.

FIG. 7 is a table illustrating collection of vehicle data that includesvehicles identification (VIN) numbers, odometer readings, dates, times,driver scores 235 of FIG. 2, vehicle scores 240 of FIG. 2, andenvironment scores 245 of FIG. 2. This is one example of data that maybe stored in the secure databases 190 of FIG. 1—overall scores 250 mayalso be stored in each row, along with input data 210 used to generateany of these scores. Note that a first row of the table in FIG. 7identifies a VIN of 1C6RD5KT7CS335395, an odometer reading of 84,685miles, a date/time of 2/14/2014—1905 Grenache Mean Time (GMT), a driverscore of 3.2, a vehicle score of 2.3, and an environment score of 4.2.Note that other rows in the table of FIG. 7 identify similar informationcollected from different vehicles and/or generated from data receivedfrom different vehicles.

FIG. 8 illustrates a vehicle electronic control system. The sub-systemof FIG. 8 includes a vehicle accelerator (i.e. a throttle or gas pedal)810, a controller 820, a vehicle electronic control unit (ECU) 830, thepositioning device 840, and a communication module 850. When a driverdepresses accelerator 810, a measure relating to how much theaccelerator is depressed may be sensed by controller 820. The measure ofaccelerator depression may correspond to an angle like Φ of FIG. 8. Assuch, Φ may correspond to a measure of resistance when accelerator 810is coupled to a rheostat (not depicted).

The positioning device 115 may receive satellite information via antenna845 and communicate that information to controller 820. In such aninstance, positioning device 115 may provide information (such aslongitude and latitude data) that identifies a current location of thevehicle to controller 820. Controller 820 may then transmit thatlocation information via communication module 850 and communicationantenna 855 to an external computing device. Communication module 850may be implemented via any type of communication technology discussedwith respect to the input devices 1060 and/or output devices 1070 ofFIG. 10, including yet not limited to wireless cellular (2G, 3G, 4G, orother) communications, radio communications, or other communicationtechnology.

In certain instances, the information provided to an external computingdevice via communication module 850 and antenna 855 may be pushed (i.e.proactively sent to) to the external computing device or be pulled bythe external computing device (i.e. sent in response to a ping or to amessage that was sent from the external computing device). Theinformation sent to the external computing device may also include aGNSS location that corresponds to a speed limit or to a replacementmaximum speed of particular locations.

Information may also be received from an external computing device viaantenna 855 and communication module 850 that may identify a speed limitalong a roadway or a replacement maximum speed, such as thepersonalized/customized speed thresholds/limits discussed with respectto FIG. 9. The information received from the external apparatus may bepassed to controller 820 where controller 820 may compare current GNSSlocation information with the received maximum speed information ascontroller 820 controls the maximum speed of the vehicle as the vehicletravels down a roadway. This information may be referred to as a controlsignal and also identify any of the other personalized/customizedthresholds/limits discussed with respect to FIG. 9, such as the limitson acceleration, braking, turning, or honking.

When controller 820 identifies that a maximum speed of the vehicleshould be changed, controller 820 may provide information to ECU 830that limits the maximum speed of the vehicle, where ECU 830 controls thespeed of the vehicle using vehicle control outputs 835. As such, vehiclecontrol outputs 835 may be coupled to an engine, electric motor, orother apparatus that may limit the speed of the vehicle. In certaininstances, controller 820 can limit the speed of the vehicle by directlyproviding speed control to an engine, an electric motor, or otherapparatus. Controller 820 may, thus, bypass ECU 830 when limiting thespeed of the vehicle. Acceleration controls operate similarly, and mayfor example provide a limit or threshold on revolutions per minute of anengine of the vehicle, or even on maximum angle or amount to which theaccelerator 810 is permitted to be depressed by the driver.

While the maximum speed of a vehicle may be limited by controller 820intercepting accelerator position and by providing substitutedaccelerator position data to ECU 830, the present disclosure is notlimited to this technique. Alternatively, the speed of a vehicle may becontrolled via other means, including, yet not limited to: applyingcontrolled braking or dynamic braking (electronic vehicles), bycontrolling the pulse with of a pulse width modulation signal thatprovides power to electrical motors, by controlling fuel as it isdelivered to an engine, or by other means.

The system 800 of FIG. 8 may include sub-system 805 that resides withina vehicle, such as the telemetric devices discussed herein. Controller820 may receive location information from positioning device 115 and mayprovide that location information to an external computing device, suchas a remote server 870 that is a computing device 1400 as discussed inFIG. 14, via communication module 850 and communication antenna 855.Note that FIG. 8 also illustrates a wireless signal 860 thatcommunicates information to external server 870. External server 870 mayperiodically ping a vehicle control sub-system of a vehicle for locationinformation. In such instances, server 870 may send a communication thatrequests (i.e. that “pings”) that vehicle control sub-system 805 sendlocation information to the server 870. Server 870 may also send some orall of this information received from vehicle control sub-system 805 tospeed data provider 880 for analysis. Note that server 870 may pingvehicle control subsystem 805 periodically (i.e. every 80 seconds, forexample). The server 870 may be used for calculation of any of thesafety scores discussed herein (e.g. driver score 235, vehicle score240, environment score 245, overall score 250), any personalized orcustomized thresholds or limits as discussed with respect to FIG. 4 orFIG. 9. The server 870 may include one or more servers and may includeany of the positioning servers 140, network server 150, or applicationservers 155 of FIG. 1, and/or additional servers not illustrated in FIG.1.

Server 870 may receive GNSS data from sub-system 805 via wireless signal860, and server 870 may communicate this GNSS data to speed dataprovider 880. Speed data provider 880 may also receive data from one ormore other sources 890. In certain instances, speed data provider 880may track a route along which a vehicle is traveling. Speed dataprovider 880 may then provide information to server 870 that relates tothe route along which the vehicle is traveling. The information providedby the speed data provider 880 may include information that identifies:a speed limit at a location, a maximum speed setting that corresponds tothe location, or may include other information that is pertinent tolimiting the maximum speed of the vehicle as it travels along the route.Server 870 may also forward the information provided by speed dataprovider 880 to sub-system 805 such that controller 820 may control themaximum speed of the vehicle according to the information provided byspeed data provider 880.

Speed data provider 880 may retrieve or be provided data from other datasources 890 when preparing information to send to server 870. Sources ofthis other data include, yet are not limited to electronic devices thatare directly connected to roadway infrastructure (such as signal lights)and services that post roadway information. These other data sources 890of FIG. 8 may be a system that collects information related to a roadwayor be a system that provides weather information regarding an areaaround the roadway. As such, data collected from other sources 890 mayinclude information relating to an accident, information related to roadhazards, or information related to weather conditions. The other sources890 may include environmental data sources 170, road-based data sources180, and/or vehicle sensors 105. In certain instances, server 870 orspeed data provider 880 may provide information relating to real-timeinformation that limits the speed of the vehicle along a roadway basedon current road conditions. For example, when server 870 or speed dataprovider 880 identifies that it is raining along a certain section ofroadway where a vehicle is traveling, information may be sent tocommunication module 850 such that controller 820 may limit the speed ofthe vehicle to 45 MPH, for example. In yet other instances, the speed ofa vehicle may be limited to speeds stored in memory at sub-system 805.

In certain instances, the functions of server 870 and speed dataprovider 880 discussed herein may be implemented by different computingdevices that communicate with each other over a data communicationinterface. In yet other instances, the functions of server 870 and speeddata provider 880 may be implemented in a single computing system. Assuch, server 870 and speed data provider 880 may reside in differentphysical locations or may be co-located at a single physical location.In certain instances, speed data provider 880 and server 870 maycommunicate with each other over the internet.

While data may be transmitted from a vehicle control sub-systemperiodically, data may also be transmitted from a vehicle controlsub-system whenever the vehicle control sub-system has detected a changein the route being driven. A change in route may, for example, beidentified when a vehicle turns more than a threshold number of degreesoff a particular route. Alternatively or additionally, a change of routemay be identified when a vehicle turns onto another roadway. In certaininstances data may be transmitted from a vehicle when an anomalouscondition has been observed. Alternatively or additionally data may betransmitted from a vehicle when an event is detected. For example, whena vehicle stops moving or when the vehicle is involved in an accident avehicle control sub-system may send a message to an external electronicdevice.

Since transmissions to server 870 may not (always) be periodic, server870 or speed data provider 880 may also use timing information when thespeed of a vehicle is controlled. In one instance, controller 820 maytransmit a relative or absolute time via communication module 850,antenna 855, and signal 860 when location information is transmittedfrom sub-system 805 to server 870, and server 870 may also transmit thistime based information when vehicle location information is transmittedto speed data provider 880. In such instances, speed data provider 880could calculate or identify measures of vehicle speed by evaluatingrelative changes in vehicle location and changes in time betweendifferent relative locations.

FIG. 9 illustrates application of driver, vehicle, and environmentalsafety/risk assessments on drive enhancement systems such as vehiclespeed limiting systems.

In particular, FIG. 9 illustrates two vehicles—a first vehicle 110A anda second vehicle 110B—that are each driven by two different driversalong a single road 980 for which a posted speed limit 985 is 40 milesper hour (mph). The first vehicle 110A is attempting to drive at a speed920A of 50 miles per hour, and vehicle control systems (such as thoseillustrated in FIG. 8) in the first vehicle 110A reduce this attemptedspeed 920A to a reduced speed 925A of 45 miles per hour. The secondvehicle 110B is attempting to drive at a speed 920B of 50 miles perhour, and vehicle control systems (such as those illustrated in FIG. 8)in the second vehicle 110B reduce this attempted speed 920B to a reducedspeed 925B of 35 miles per hour. The determination as to how much toreduce the speed for either vehicle can be based on the attempted speed920, a speed limit 985 applicable on the thoroughfare that the vehicleis on, a driver safety score 235A/235B of the driver, a vehicle safetyscore 240A/240B of the vehicle, an environmental safety score 245 of theenvironment that the vehicle is driving in, an overall safety score250A/250B that combines at least two of the driver score 235A & 235Band/or vehicle score 240A & 240B and/or environment score 245 of FIG. 2.Optionally as discussed in respect to FIG. 3A & FIG. 4 overall scoresmay be calculated based on some combination of collected data orcalculated driver, vehicle, and/or environment scores.

Note that the scores of FIG. 9 use a 0-100 scale instead of the 1-5scale illustrated in FIG. 2, FIG. 4, FIG. 5, and FIG. 6. In FIG. 9, the0-100 scale is represented as such: 100 is very safe and 0 is veryunsafe. An overall safety score 250A assigned to the first vehicle 110Aand the first driver along this road 980 is 87 out of 100. Thisrelatively high overall safety score 250A indicates that, overall, thereis a relatively low risk associated with this first driver driving thefirst vehicle 110A along the road 980. When possible, the overall safetyscore 250A is calculated using the driver safety score 235A, the vehiclesafety score 240A, and the environment safety score 245. Here, the firstdriver has a driver safety score 235A of 90 out of 100, meaning that thefirst driver is generally a safe driver. The vehicle safety score 240Aof the first vehicle 110A is 85 out of 100, meaning that the firstvehicle 110A is in relatively good condition and is relatively safe todrive. The environment safety score 245, as above, is 80 out of 100,which indicates that the environment is relatively safe to drive in.

An overall safety score 250B assigned to the second vehicle 110B and thesecond driver along this road 980 is 68 out of 100. This mediocreoverall safety score 250A indicates that, overall, the risk of thissecond driver driving the second vehicle 110B along the road 980 ishigher than the risk of the first driver driving the first vehicle 110Aalong the road 980. As discussed above, the overall safety score 250B isgenerally calculated using the driver safety score 235B, the vehiclesafety score 240B, and the environment safety score 245. Here, thesecond driver has a driver safety score 235B of 45 out of 100,suggesting that the second driver is generally not a very safe driver.The vehicle safety score 240A of the second vehicle 110B is 60 out of100, meaning that the second vehicle 110B is in relatively mediocrecondition and is not particularly safe to drive. The environment safetyscore 245 is 80 out of 100 as above.

The overall safety score 250A, which corresponds to the first vehicle110A and/or its driver and/or the environment that the first vehicle110A is driving in, is higher than the overall safety score 250B, whichcorresponds to the second vehicle 110B and/or its driver and/or theenvironment that the second vehicle 110B is driving in. As a result,even though both vehicles have an attempted speed 920 of 50 miles perhour, the first vehicle 110A has a reduced speed 925A of 45 miles perhour, while the second vehicle 110B has a reduced speed 925B of 35 milesper hour. The reduced speed 925 of any vehicle may be a static numericlimit, or may vary depending on the attempted speed 420 of the vehicleand/or speed limit 985 and/or any changes to the driver score 235,vehicle score 240, environment score 245, or overall score 250.

The driver safety score 235 may be based on anything discussed withrespect to the input data 210 of FIG. 2 or the various data sources ofFIG. 1, or any of the following: driver health, driver age, number ofyears of experience as a driver, scores or grades awarded to the driverfor each of one or more paper-based and/or behind-the-wheel-styledriving tests, recent sensor measurement(s) of driver heartbeat, recentsensor measurement(s) of driver pulse, recent sensor measurement(s) ofdriver blood oxygen level, recent sensor measurement(s) of driverglucose level, recent sensor measurement(s) of driver perspirationlevel, recent sensor measurement(s) of driver body temperature, recentsensor measurement(s) of blood alcohol content, whether or not thevehicle identifies that the driver is wearing a seatbelt, whether or notthe vehicle identifies that each of one or more passengers is wearing aseatbelt, duration of time that the driver has been driving without arest break, number of vehicle-related accidents that the driver has beeninvolved in, how recent one or more vehicle-related accidents that thedriver was involved in were, whether the driver was found to be at faultin one or more vehicle-related accidents that the driver was involvedin, reported eyesight quality of the driver, whether or not the driveris wearing glasses, whether or not the driver is wearing contact lenses,whether or not the driver is wearing sunglasses, one or more reportedillnesses of the driver, one or more reported medical conditions of thedriver, one or more reported disabilities of the driver, one or morereported medications that the driver is currently using, one or morereported medications that the driver is uses on a regular basis, an ageof the driver, an age range into which the driver's age falls into, agender or sex of the driver, a race or ethnicity or national origin ofthe driver, one or more camera-based and computer-vision-baseddeterminations of whether the driver's eyes appear to be focused on theroad or distracted and focused elsewhere, whether any driving datareported by the driver is suspected to be fraudulent, any otherindication of driver safety or risk discussed herein, or combinationsthereof.

The vehicle safety score 240A or 240B may be based on anything discussedwith respect to the input data 210 of FIG. 2 or the various data sourcesof FIG. 1, or any of the following: mileage of the vehicle, age of thevehicle, number of owners of the vehicle over time, number of drivers ofthe vehicle over time, number of accidents that the vehicle has been in,number of repairs made on the vehicle, quantity of fuel remaining ineach of one or more fuel storage tanks of the vehicle, type of fuel usedby the vehicle (e.g., diesel, leaded gasoline/petrol, unleadedgasoline/petrol, ethanol, hydrogen, natural gas, propane, butane,kerosene, liquefied petroleum gas, electricity, biodiesel, methanol,p-series fuels, or hybrids/combinations thereof), damage incurred by thevehicle, modifications performed to the vehicle, weight being carried bythe vehicle, class of vehicle, type of vehicle (e.g., boat, train,airplane, helicopter, sedan automobile, coupe automobile, sports utilityvehicle automobile, truck automobile, semi-truck automobile,motorcycle), brand of vehicle, manufacturer of vehicle, distributor ofvehicle, purchase date of vehicle, number of component recalls in thevehicle, presence or lack of airbags, presence or lack of heating,presence or lack of air conditioning, presence or lack of fans, tirepressure, quantity of oil, battery charge level of each of one or morebatteries, presence or lack of tire chains, presence or lack offour-wheel-drive (4WD) capability by the vehicle, presence or lack ofall-wheel-drive (AWD) capability by the vehicle, presence or lack ofanti-lock brakes, quality and/or age and/or condition of the brakes,quality and/or age and/or condition of tires and/or tire treads,presence or lack of seat belts, any other indication of vehicle safetyor risk discussed herein, whether the vehicle has autonomous drivingcapabilities, safety record of the vehicle's autonomous drivingcapabilities, level of driving autonomy, whether the vehicle hasautonomous parking capabilities, safety record of the vehicle'sautonomous parking capabilities, or combinations thereof.

Level of driving autonomy generally falls into a level from 0 to 5.Level 0 autonomy indicates that the vehicle is not autonomous at all,and the driver has full control. Level 5 autonomy indicates that thevehicle is fully autonomous and never requires driver input. Levels 1-4are levels of driving autonomy in between level 0 and level 5. Level 1autonomy indicates that most functions are still controlled by thedriver, but a specific function—such as steering or accelerating—can bedone automatically by the car. Level 2 autonomy indicates that aspectsof steering and acceleration/deceleration are autonomous, as in cruisecontrol and lane-centering, allowing drivers to take their hands off ofthe steering wheel and their foot off of the gas pedalsimultaneously—but must always be ready to take control of the vehicle.Level 3 autonomy indicates that the vehicle is mostly autonomous butthat the driver may be required to intervene under certain traffic orenvironmental conditions. Level 4 autonomy indicates that the vehicle isfully autonomous and is designed to perform perfectly for a full trip,but is not designed for certain driving scenarios or environments (e.g.,dirt roads, off-roading). Level 5 autonomy indicates that the vehicle isfully autonomous and expected to perform equivalently to a human inevery possible driving scenario. Overreliance on autonomous vehicles cancause drivers to fall out of practice and become poorer in everydaydriving scenarios. Also, while a level 4 or level 5 vehicle might besafer than a human driver in certain situations (depending on theautonomous vehicle control system's safety record), Level 2 autonomy orLevel 3 autonomy may actually pose a greater degree of risk than evenLevel 0, as drivers are likely to take their eyes off of the road andstop paying attention despite the incomplete degree of autonomy andoccasional requirement that human drivers intervene.

The environment safety score 245 may be based on anything discussed withrespect to the input data 210 of FIG. 2 or the various data sources ofFIG. 1, or any of the following: road type, road material, number oflanes, width of lanes, width of road, length of road, quality/frequencyof lane markings/signage/signals, condition of road, obstacles,construction, local weather, traffic, time of day, temperature,humidity, air pressure, wind speed, wind direction, altitude, slope,direction, one-way or two-way road, surroundings, soil type, landsliderisk, flood risk, nearby structures, air pollution, local wildlife, airquality, fog/mist, allergens, cellular network reception, radioreception, icing risk, presence of de-icing chemicals, tire chainrequirements, time in terrain, any other indication of environment-basedsafety or risk discussed herein, or combinations thereof.

Road type is important as a bridge with steep drops on either side isgenerally inherently more risky to drive along than a freeway goingthrough a relatively planar countryside. Furthermore, as “road” is usedbroadly here to refer to various types of thoroughfares, a train trackis generally a safer type of “road” than a road for automobiles, astrains generally do not have to watch out for other vehicular traffic orpedestrians except at intersections of train tracks with other traintracks or automobile roads or other types of thoroughfares. Roadmaterial is important in that dirt roads or gravel roads are typicallyless safe and more risky than asphalt roads due to decreased traction.Number of lanes and is important, as more lanes can more easily permitpassing, but can also cause issues due to dangerous weaving drivers.Width of lanes and width of the road in general is important, as widerlanes are more forgiving of slight unintended movements by vehicles, andtherefore safer and less risky to drive along. Width of the road isimportant, as wider roads are more forgiving and give more room tomaneuver along inherently risky terrain such as mountains or bridges.Length of the road (both length between stops and length overall) isimportant, as drivers going along a long road without any rest areas orstops may experience fatigue and endanger everyone on the road as aresult. Length of the road is important, as drivers going along a longroad without any rest areas or stops may experience fatigue and endangereveryone on the road as a result.

Quality and/or frequency of lane markings, signage, and road/trafficsignals is important, as roads with faded or nonexistent lane markingsare riskier and less safe than roads with fresh lane markings, andintersections without stop signs or traffic signals (or withdefective/incorrect signs or traffic signals) are less safe thanroads/intersections with more correct signage and working road/trafficsignals. The condition of road is important, as roads with potholes andcracks are less safe than roads without such wear. Obstacles such asstopped cars, accident wreckage, pedestrians (e.g., along a road thatruns near a school or shopping mall), or stray tree branches likewisemake roads less safe. Construction is important, as roads/lanes canoften be unexpectedly closed off or rerouted due to traffic, increasingrisk by putting drivers on unfamiliar or unusual routes, and becauseconstruction can cause hazards and obstacles such as construction crewpersonnel, or flying rocks, dirt, dust, or sparks that can affect avehicle.

Local weather is important, as unusual weather can affect safety andrisk negatively. Precipitation such as rain, snow, sleet, or hail candecrease driving safety by obscuring or potentially damaging windshieldsand by depositing substances (snow, water, ice, hail) on the road thatdecrease vehicles' traction with the road. Other aerial phenomena, suchas fog, mist, heavy winds, dust, tornadoes, whirlwinds, dust devils, canlikewise obscure driving visibility or push/pull vehicles in directionsthat the driver is not directing the vehicle depending on wind speed andwind direction. Local traffic is important as well, as a road sufferingbumper-to-bumper traffic is riskier to drive along than a road withlittle to no other vehicles along it. Time of day is important, asdrivers driving late at night generally have lower visibility of theirsurroundings and are generally more fatigued and therefore drive lesssafely. At the same time, drivers driving at or near local sunset orlocal sunrise times are likely to experience sunlight shining in theireyes, which may similarly reduce visibility. Effects such astemperature, humidity, altitude, and air pressure may affect vehicleperformance and may contribute to driver fatigue, potentially making adrive less safe. Slope, or road grade, is important in that a steep road(e.g., 20% grade or above) is riskier than a relatively flat one (e.g.,10% grade or below). Road direction can be important in combination withother factors such as slope, to determine if the road travels uphill ordownhill, or wind direction, to determine whether the wind ispushing/pulling vehicles toward an unsafe direction, such as toward acliff. Whether the road is a one-way road or a two-way road may alsoimpact safety, as driving along one-way roads carries a lower risk ofhead-on collisions between vehicles.

Surroundings, landmarks, and nearby structures are important, in that aroad near or along a cliff edge is riskier to drive along than a road ina relatively planar area, and a road alongside a hazardous wastefacility or a school with many nearby pedestrians might be riskier todrive along than a road surrounded by fields of grass. Soil type andlandslide risk are important, as softer soil or high landslide risk canincrease the risk of the road collapsing, or the surroundings collapsingonto the road and any vehicles on it. Earthquake risk and flood risk areimportant in that areas prone to such disasters are less safe to drivein. Local wildlife, such as deer, can also serve as unexpected movingobstacles for drivers to avoid, and represent risk. Air pollution, airquality, bad smells, and allergens can sometimes increase risk bydamaging vehicles, distracting drivers, or causing drivers to drivequickly to escape affected areas. Icing risk, tire chain requirements,and presence of de-icing chemicals are important in that icy roads havelittle traction and are therefore dangerous. Poor cellular networkreception or radio reception can also represent a distraction fordrivers who might be tempted to fiddle with radios or cellular devicesthat have stopped working properly. Icing risk can cause slippery anddangerous roads, a risk which may be mitigated by presence of de-icingchemicals such as salt on the road. If there is a tire chain requirementfor a particular stretch of road, that generally indicates that thatstretch of road is at risk of being very snowy and/or icy and may havesteep terrain as well, which may indicate risk particularly if thevehicle at issue does not have tire chains applied and/or does not have4WD or AWD capabilities. Time in a particular terrain or environmenttype may also be an issue, as extended periods of time in very cold orvery hot or very wet conditions, for example, might cause vehiclecomponents of some vehicles to expand, contract, freeze, melt, rust,deform, or otherwise undergo a modification that results in thesecomponents not functioning as they original would or as they areintended to function, thereby providing extra risk.

While FIG. 9 illustrates generation of speed thresholds or limits thatare personalized or customized to the driver and/or to the vehicleand/or to the environment—that is, the “speed reduced to” 925values—other types of personalized or customized thresholds or limitscan also be generated. For instance, personalized or customizedthresholds or limits can be generated for acceleration, deceleration,turning radius, brake strength, duration of horn usage, frequency ofhorn usage, duration of high-beam usage, frequency of high-beam usage,or combinations thereof. Like for speed, these may be personalized orcustomized to the driver and/or to the vehicle and/or to theenvironment. For example, an extremely aggressive driver with a lowdriver safety score 235 might be prevented from accelerating too sharplyor honking too often or for too long. A vehicle with a low vehiclesafety score 240 might similarly be prevented from accelerating too hardor turning too sharply to avoid further damage to the vehicle. A vehicledriving in a risky area with a low environment safety score 245, such asalong a cliff side, might also be prevented from accelerating too hard.Similarly, a vehicle driving in heavy traffic might be prevented fromaccelerating too hard, honking too frequently/long, or using its highbeams too frequently/long.

FIG. 10 illustrates an exemplary computing system 1000 that may be usedto implement some aspects of the subject technology. For example, any ofthe computing devices, computing systems, network devices, networksystems, servers, and/or arrangements of circuitry described herein mayinclude at least one computing system 1000, or may include at least onecomponent of the computer system 1000 identified in FIG. 10. Thecomputing system 1000 of FIG. 10 includes one or more processors 1010and memory 1020. Each of the processor(s) 1010 may refer to one or moreprocessors, controllers, microcontrollers, central processing units(CPUs), graphics processing units (GPUs), arithmetic logic units (ALUs),accelerated processing units (APUs), digital signal processors (DSPs),application specific integrated circuits (ASICs), field-programmablegate arrays (FPGAs), or combinations thereof. Each of the processor(s)1010 may include one or more cores, either integrated onto a single chipor spread across multiple chips connected or coupled together. Memory1020 stores, in part, instructions and data for execution by processor1010. Memory 1020 can store the executable code when in operation. Thesystem 1000 of FIG. 10 further includes a mass storage device 1030,portable storage medium drive(s) 1040, output devices 1050, user inputdevices 1060, a graphics display 1070, peripheral devices 1080, and anetwork interface 1095.

The components shown in FIG. 10 are depicted as being connected via asingle bus 1090. However, the components may be connected through one ormore data transport means. For example, processor unit 1010 and memory1020 may be connected via a local microprocessor bus, and the massstorage device 1030, peripheral device(s) 1080, portable storage device1040, and display system 1070 may be connected via one or moreinput/output (I/O) buses. Alternatively or additionally, the variouscomponents in FIG. 10 may communicate using wireless communications.

Mass storage device 1030, which may be implemented with a magnetic diskdrive or an optical disk drive, is a non-volatile storage device forstoring data and instructions for use by processor unit 1010. Massstorage device 1030 can store the system software for implementing someaspects of the subject technology for purposes of loading that softwareinto memory 1020.

Portable storage device 1040 operates in conjunction with a portablenon-volatile storage medium, such as a floppy disk, compact disk orDigital video disc, to input and output data and code to and from thecomputer system 1000 of FIG. 10. The system software for implementingaspects of the subject technology may be stored on such a portablemedium and input to the computer system 1000 via the portable storagedevice 1040.

The memory 1020, mass storage device 1030, or portable storage 1040 mayin some cases store sensitive information, such as transactioninformation, health information, or cryptographic keys, and may in somecases encrypt or decrypt such information with the aid of the processor1010. The memory 1020, mass storage device 1030, or portable storage1040 may in some cases store, at least in part, instructions, executablecode, or other data for execution or processing by the processor 1010.

Output devices 1050 may include, for example, communication circuitryfor outputting data through wired or wireless means, display circuitryfor displaying data via a display screen, audio circuitry for outputtingaudio via headphones or a speaker, printer circuitry for printing datavia a printer, or some combination thereof. The display screen may beany type of display discussed with respect to the display system 1070.The printer may be inkjet, laserjet, thermal, or some combinationthereof. In some cases, the output device circuitry 1050 may allow fortransmission of data over an audio jack/plug, a microphone jack/plug, auniversal serial bus (USB) port/plug, an Apple® Lightning® port/plug, anEthernet port/plug, a fiber optic port/plug, a proprietary wiredport/plug, a BLUETOOTH® wireless signal transfer, a BLUETOOTH® lowenergy (BLE) wireless signal transfer, an IBEACON® wireless signaltransfer, a radio-frequency identification (RFID) wireless signaltransfer, near-field communications (NFC) wireless signal transfer,802.11 Wi-Fi wireless signal transfer, cellular data network wirelesssignal transfer, a radio wave signal transfer, a microwave signaltransfer, an infrared signal transfer, a visible light signal transfer,an ultraviolet signal transfer, a wireless signal transfer along theelectromagnetic spectrum, or some combination thereof. Output devices1050 may include any ports, plugs, antennae, wired or wirelesstransmitters, wired or wireless transceivers, or any other componentsnecessary for or usable to implement the communication types listedabove, such as cellular Subscriber Identity Module (SIM) cards.

Input devices 1060 may include circuitry providing a portion of a userinterface. Input devices 1060 may include an alpha-numeric keypad, suchas a keyboard, for inputting alpha-numeric and other information, or apointing device, such as a mouse, a trackball, stylus, or cursordirection keys. Input devices 1060 may include touch-sensitive surfacesas well, either integrated with a display as in a touchscreen, orseparate from a display as in a trackpad. Touch-sensitive surfaces mayin some cases detect localized variable pressure or force detection. Insome cases, the input device circuitry may allow for receipt of dataover an audio jack, a microphone jack, a universal serial bus (USB)port/plug, an Apple® Lightning® port/plug, an Ethernet port/plug, afiber optic port/plug, a proprietary wired port/plug, a wired local areanetwork (LAN) port/plug, a BLUETOOTH® wireless signal transfer, aBLUETOOTH® low energy (BLE) wireless signal transfer, an IBEACON®wireless signal transfer, a radio-frequency identification (RFID)wireless signal transfer, near-field communications (NFC) wirelesssignal transfer, 802.11 Wi-Fi wireless signal transfer, wireless localarea network (WAN) signal transfer, cellular data network wirelesssignal transfer, personal area network (PAN) signal transfer, wide areanetwork (WAN) signal transfer, a radio wave signal transfer, a microwavesignal transfer, an infrared signal transfer, a visible light signaltransfer, an ultraviolet signal transfer, a wireless signal transferalong the electromagnetic spectrum, or some combination thereof. Inputdevices 1060 may include any ports, plugs, antennae, wired or wirelessreceivers, wired or wireless transceivers, or any other componentsnecessary for or usable to implement the communication types listedabove, such as cellular SIM cards.

Input devices 1060 may include receivers or transceivers used forpositioning of the computing system 1000 as well. These may include anyof the wired or wireless signal receivers or transceivers. For example,a location of the computing system 1000 can be determined based onsignal strength of signals as received at the computing system 1000 fromthree cellular network towers, a process known as cellulartriangulation. Fewer than three cellular network towers can also beused—even one can be used—though the location determined from such datawill be less precise (e.g., somewhere within a particular circle for onetower, somewhere along a line or within a relatively small area for twotowers) than via triangulation. More than three cellular network towerscan also be used, further enhancing the location's accuracy. Similarpositioning operations can be performed using proximity beacons, whichmight use short-range wireless signals such as BLUETOOTH® wirelesssignals, BLUETOOTH® low energy (BLE) wireless signals, IBEACON® wirelesssignals, personal area network (PAN) signals, microwave signals, radiowave signals, or other signals discussed above. Similar positioningoperations can be performed using wired local area networks (LAN) orwireless local area networks (WLAN) where locations are known of one ormore network devices in communication with the computing system 1000such as a router, modem, switch, hub, bridge, gateway, or repeater.These may also include Global Navigation Satellite System (GNSS)receivers or transceivers that are used to determine a location of thecomputing system 1000 based on receipt of one or more signals from oneor more satellites associated with one or more GNSS systems. GNSSsystems include, but are not limited to, the US-based Global PositioningSystem (GPS), the Russia-based Global Navigation Satellite System(GLONASS), the China-based BeiDou Navigation Satellite System (BDS), andthe Europe-based Galileo GNSS. Input devices 1060 may include receiversor transceivers corresponding to one or more of these GNSS systems.

Display system 1070 may include a liquid crystal display (LCD), a plasmadisplay, an organic light-emitting diode (OLED) display, an electronicink or “e-paper” display, a projector-based display, a holographicdisplay, or another suitable display device. Display system 1070receives textual and graphical information, and processes theinformation for output to the display device. The display system 1070may include multiple-touch touchscreen input capabilities, such ascapacitive touch detection, resistive touch detection, surface acousticwave touch detection, or infrared touch detection. Such touchscreeninput capabilities may or may not allow for variable pressure or forcedetection.

Peripherals 1080 may include any type of computer support device to addadditional functionality to the computer system. For example, peripheraldevice(s) 1080 may include one or more additional output devices of anyof the types discussed with respect to output device 1050, one or moreadditional input devices of any of the types discussed with respect toinput device 1060, one or more additional display systems of any of thetypes discussed with respect to display system 1070, one or morememories or mass storage devices or portable storage devices of any ofthe types discussed with respect to memory 1020 or mass storage 1030 orportable storage 1040, a modem, a router, an antenna, a wired orwireless transceiver, a printer, a bar code scanner, a quick-response(“QR”) code scanner, a magnetic stripe card reader, a integrated circuitchip (ICC) card reader such as a smartcard reader or aEUROPAY®-MASTERCARD®-VISA® (EMV) chip card reader, a near fieldcommunication (NFC) reader, a document/image scanner, a visible lightcamera, a thermal/infrared camera, an ultraviolet-sensitive camera, anight vision camera, a light sensor, a phototransistor, a photoresistor,a thermometer, a thermistor, a battery, a power source, a proximitysensor, a laser rangefinder, a sonar transceiver, a radar transceiver, alidar transceiver, a network device, a motor, an actuator, a pump, aconveyer belt, a robotic arm, a rotor, a drill, a chemical assay device,or some combination thereof.

Network interface 1095 may be any form of communication interface knownin the art that allows computer system 1000 to receive data from or senddata to other computers. As such, the network interface 1095 may bewired or wireless interface or include both wired and wirelesscommunication capabilities. Some network interfaces included in acomputer of a vehicle may be an interface that communicates over acellular network, a radio network, or a satellite network.

The components contained in the computer system 1000 of FIG. 10 caninclude those typically found in computer systems that may be suitablefor use with some aspects of the subject technology and represent abroad category of such computer components that are well known in theart. That said, the computer system 1000 of FIG. 10 can be customizedand specialized for the purposes discussed herein and to carry out thevarious operations discussed herein, with specialized hardwarecomponents, specialized arrangements of hardware components, and/orspecialized software. Thus, the computer system 1000 of FIG. 10 can be apersonal computer, a hand held computing device, a telephone(“smartphone” or otherwise), a mobile computing device, a workstation, aserver (on a server rack or otherwise), a minicomputer, a mainframecomputer, a tablet computing device, a wearable device (such as a watch,a ring, a pair of glasses, or another type of jewelry or clothing oraccessory), a video game console (portable or otherwise), an e-bookreader, a media player device (portable or otherwise), a vehicle-basedcomputer, another type of computing device, or some combination thereof.The computer system 1000 may in some cases be a virtual computer systemexecuted by another computer system. The computer can also includedifferent bus configurations, networked platforms, multi-processorplatforms, etc. Various operating systems can be used including Unix®,Linux®, FreeBSD®, FreeNAS®, pfSense®, Windows®, Apple® Macintosh OS®(“MacOS®”), Palm OS®, Google® Android®, Google® Chrome OS®, Chromium®OS®, OPENSTEP®, XNU®, Darwin®, Apple® iOS®, Apple® tvOS®, Apple®watchOS®, Apple® audioOS®, Amazon® Fire OS®, Amazon® Kindle OS®,variants of any of these, other suitable operating systems, orcombinations thereof. The computer system 1000 may also use a BasicInput/Output System (BIOS) or Unified Extensible Firmware Interface(UEFI) as a layer upon which the operating system(s) are run.

In some cases, the computer system 1000 may be part of a multi-computersystem that uses multiple computer systems 1000, each for one or morespecific tasks or purposes. For example, the multi-computer system mayinclude multiple computer systems 1000 communicatively coupled togethervia at least one of a personal area network (PAN), a local area network(LAN), a wireless local area network (WLAN), a municipal area network(MAN), a wide area network (WAN), or some combination thereof. Themulti-computer system may further include multiple computer systems 1000from different networks communicatively coupled together via theinternet (also known as a “distributed” system).

Some aspects of the subject technology may be implemented in anapplication that may be operable using a variety of devices.Non-transitory computer-readable storage media refer to any medium ormedia that participate in providing instructions to a central processingunit (CPU) for execution and that may be used in the memory 1020, themass storage 1030, the portable storage 1040, or some combinationthereof. Such media can take many forms, including, but not limited to,non-volatile and volatile media such as optical or magnetic disks anddynamic memory, respectively. Some forms of non-transitorycomputer-readable media include, for example, a floppy disk, a flexibledisk, a hard disk, magnetic tape, a magnetic strip/stripe, any othermagnetic storage medium, flash memory, memristor memory, any othersolid-state memory, a compact disc read only memory (CD-ROM) opticaldisc, a rewritable compact disc (CD) optical disc, digital video disk(DVD) optical disc, a blu-ray disc (BDD) optical disc, a holographicoptical disk, another optical medium, a secure digital (SD) card, amicro secure digital (microSD) card, a Memory Stick® card, a smartcardchip, a EMV chip, a subscriber identity module (SIM) card, amini/micro/nano/pico SIM card, another integrated circuit (IC)chip/card, random access memory (RAM), static RAM (SRAM), dynamic RAM(DRAM), read-only memory (ROM), programmable read-only memory (PROM),erasable programmable read-only memory (EPROM), electrically erasableprogrammable read-only memory (EEPROM), flash EPROM (FLASHEPROM), cachememory (L1/L2/L3/L4/L5/L10), resistive random-access memory(RRAM/ReRAM), phase change memory (PCM), spin transfer torque RAM(STT-RAM), another memory chip or cartridge, or a combination thereof.

Various forms of transmission media may be involved in carrying one ormore sequences of one or more instructions to a processor 1010 forexecution. A bus 1090 carries the data to system RAM or another memory1020, from which a processor 1010 retrieves and executes theinstructions. The instructions received by system RAM or another memory1020 can optionally be stored on a fixed disk (mass storage device1030/portable storage 1040) either before or after execution byprocessor 1010. Various forms of storage may likewise be implemented aswell as the necessary network interfaces and network topologies toimplement the same.

While various flow diagrams provided and described above may show aparticular order of operations performed by some embodiments of thesubject technology, it should be understood that such order isexemplary. Alternative embodiments may perform the operations in adifferent order, combine certain operations, overlap certain operations,or some combination thereof. It should be understood that unlessdisclosed otherwise, any process illustrated in any flow diagram hereinor otherwise illustrated or described herein may be performed by amachine, mechanism, and/or computing system 1000 discussed herein, andmay be performed automatically (e.g., in response to one or moretriggers/conditions described herein), autonomously, semi-autonomously(e.g., based on received instructions), or a combination thereof.Furthermore, any action described herein as occurring in response to oneor more particular triggers/conditions should be understood tooptionally occur automatically response to the one or more particulartriggers/conditions.

The foregoing detailed description of the technology has been presentedfor purposes of illustration and description. It is not intended to beexhaustive or to limit the technology to the precise form disclosed.Many modifications and variations are possible in light of the aboveteaching. The described embodiments were chosen in order to best explainthe principles of the technology, its practical application, and toenable others skilled in the art to utilize the technology in variousembodiments and with various modifications as are suited to theparticular use contemplated. It is intended that the scope of thetechnology be defined by the claim.

What is claimed is:
 1. A method of analyzing driver behavior, the methodcomprising: receiving kinematic data from a computing device at avehicle operated by a driver, the kinematic data characterizing movementof the vehicle over a first time period associated with the driveroperating the vehicle; generating a driver safety score for the driverbased on the kinematic data received from the computing device over thefirst time period; updating the driver safety score based on additionalkinematic data received over a second time period; identifying that thedriver safety score has reached a first threshold level after updatingthe driver safety score; and initiating an action based on the driversafety score reaching the first threshold level.
 2. The method of claim1, further comprising: generating a notification identifying the action;and transmitting the notification to a recipient device.
 3. The methodof claim 2, wherein the recipient device is the computing device.
 4. Themethod of claim 2, wherein the recipient device is an administratordevice that also receives one or more additional driver safety scoresfor one or more additional drivers.
 5. The method of claim 1, whereinthe identifying that the driver safety score has reached the firstthreshold level includes identifying that the driver safety score hasfallen at least to the first threshold level and the notificationincludes a warning.
 6. The method of claim 1, wherein the identifyingthat the driver safety score has reached the first threshold levelincludes identifying that the driver safety score has risen at least tothe first threshold level and the notification includes a reward.
 7. Themethod of claim 1, wherein the action initiated includes sending arequest to a computer at the vehicle, preventing the vehicle fromexceeding a particular speed identified in the request.
 8. The method ofclaim 1, further comprising: identifying one or more secondary driversafety scores for one or more secondary drivers other than the driver;and generating the first threshold level based on the one or moresecondary driver safety scores.
 9. The method of claim 8, wherein theone or more secondary drivers are located in a same area as the driver.10. The method of claim 8, wherein the one or more secondary drivers aredriving one or more secondary vehicles of a same vehicle type as thevehicle.
 11. The method of claim 8, further comprising identifying anaverage of the one or more secondary driver safety scores, wherein thefirst threshold level is generated based on the average of the one ormore secondary driver safety scores.
 12. The method of claim 8, furthercomprising identifying a standard deviation of the one or more secondarydriver safety scores, wherein the first threshold level is generatedbased on the standard deviation of the one or more secondary driversafety scores.
 13. An apparatus for analyzing driver behavior, theapparatus comprising: a memory storing instructions; and a processorthat executes the instructions to: generate a driver safety score basedon kinematic data received from a computing device at a vehicle operatedby a driver, the kinematic data characterizing movement of the vehicleover a first time period associated with the driver operating thevehicle; update the driver safety score based on additional kinematicdata received over a second time period; identify that the driver safetyscore has reached a first threshold level after updating the driversafety score; and initiate an action based on the driver safety scorereaching the first threshold level.
 14. The apparatus of claim 13, wherethe processor also executes instructions to: generate a notificationidentifying the action; and transmit the notification to a recipientdevice.
 15. The apparatus of claim 14, wherein the recipient device isthe computing device.
 16. The apparatus of claim 14, wherein therecipient device is an administrator device that also receives one ormore additional driver safety scores for one or more additional drivers.17. The apparatus of claim 13, wherein the identifying that the driversafety score has reached the first threshold level includes identifyingthat the driver safety score has fallen at least to the first thresholdlevel and the notification includes a warning.
 18. The method of claim17, wherein the identifying that the driver safety score has reached thefirst threshold level includes identifying that the driver safety scorehas risen at least to the first threshold level and the notificationincludes a reward.
 19. The method of claim 13, wherein the processorexecutes the instructions to further: identify one or more secondarydriver safety scores for one or more secondary drivers other than thedriver, and generate the first threshold level based on the one or moresecondary driver safety scores.
 20. A non-transitory computer-readablestorage medium having embodied thereon a program executable by aprocessor for implementing a method of analyzing driver behavior, themethod comprising: receiving kinematic data from a computing device at avehicle operated by a driver, the kinematic data characterizing movementof the vehicle over a first time period; generating a driver safetyscore for the driver based on the kinematic data received from thecomputing device over the first time period; updating the driver safetyscore based on additional kinematic data received over a second timeperiod; identifying that the driver safety score has reached a firstthreshold level after updating the driver safety score; and initiatingan action based on the driver safety score reaching the first thresholdlevel.